package com.lbmb.mdps.settings.service;

import com.lbmb.mdps.commons.domain.EmployeeReceive;
import com.lbmb.mdps.commons.domain.EmployeeVo;
import com.lbmb.mdps.commons.domain.UserReceive;
import com.lbmb.mdps.commons.exception.AdministratorException;
import com.lbmb.mdps.commons.exception.EmployeeException;
import com.lbmb.mdps.settings.domain.Administrator;
import com.lbmb.mdps.settings.domain.Employee;

import java.util.List;

/**
 * @author 林文塨
 * @date 2022-05-30 2:32
 * description
 */
public interface EmployeeService {
    Employee login(Employee employee) throws EmployeeException;

    List<Employee> employeePageList(EmployeeReceive employeeReceive) throws EmployeeException;

    Integer getEmployeeTotal(EmployeeReceive employeeReceive) throws EmployeeException;

    void addEmployee(Employee employee) throws EmployeeException;

    void editEmployee(Employee employee) throws EmployeeException;

    void deleteEmployee(String[] deleteEmployeeIds) throws EmployeeException;

    void acceptEmployee(String[] editEmployeeStatusIds) throws EmployeeException;

    void forbiddenEmployee(String[] editEmployeeStatusIds) throws EmployeeException;

    List<EmployeeVo> getAllEmployee();

    void editPassword(UserReceive userReceive) throws EmployeeException;
}
